package com.dy.pmsPlatform.proParam; 
 | 
  
 | 
import com.alibaba.fastjson2.JSON; 
 | 
import com.dy.common.aop.SsoPowerAop; 
 | 
import com.dy.common.webUtil.BaseResponse; 
 | 
import com.dy.common.webUtil.BaseResponseUtils; 
 | 
import com.dy.common.webUtil.QueryResultVo; 
 | 
import com.dy.pmsGlobal.aop.Log; 
 | 
import com.dy.pmsGlobal.pojoPlt.PltProductParams; 
 | 
import jakarta.validation.Valid; 
 | 
import lombok.extern.slf4j.Slf4j; 
 | 
import org.springframework.beans.factory.annotation.Autowired; 
 | 
import org.springframework.validation.BindingResult; 
 | 
import org.springframework.web.bind.annotation.*; 
 | 
  
 | 
import java.util.List; 
 | 
import java.util.Objects; 
 | 
  
 | 
/** 
 | 
 * 产品技术参数管理 
 | 
 */ 
 | 
@Slf4j 
 | 
@RestController 
 | 
@RequestMapping(path="param") 
 | 
@SuppressWarnings("unchecked") 
 | 
public class ParamCtrl { 
 | 
    private ParamSv sv; 
 | 
    @Autowired 
 | 
    public ParamCtrl(ParamSv sv){ 
 | 
        this.sv = sv; 
 | 
    } 
 | 
  
 | 
    /** 
 | 
     * 保存产品技术参数信息 
 | 
     * @param param 
 | 
     * @param bindingResult 
 | 
     * @return 
 | 
     */ 
 | 
    @PostMapping(path="save") 
 | 
    @SsoPowerAop(power = "10300001") 
 | 
    @Log("保存产品技术参数信息") 
 | 
    public BaseResponse<PltProductParams> save(@RequestBody @Valid PltProductParams param,BindingResult bindingResult){ 
 | 
        try { 
 | 
            if (bindingResult != null && bindingResult.hasErrors()) { 
 | 
                return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage()); 
 | 
            } 
 | 
            param.deleted = false; 
 | 
            return BaseResponseUtils.buildSuccess(sv.save(param)); 
 | 
        }catch (Exception e){ 
 | 
            log.error("保存产品技术参数异常", e); 
 | 
            return BaseResponseUtils.buildException(e.getMessage()); 
 | 
        } 
 | 
    } 
 | 
  
 | 
  
 | 
    /** 
 | 
     * 更新产品技术参数信息 
 | 
     * @param param 
 | 
     * @param bindingResult 
 | 
     * @return 
 | 
     */ 
 | 
    @PostMapping(path="update") 
 | 
    @SsoPowerAop(power = "10300001") 
 | 
    @Log("更新产品技术参数信息") 
 | 
    public BaseResponse<PltProductParams> update(@RequestBody @Valid PltProductParams param,BindingResult bindingResult){ 
 | 
        try { 
 | 
            if (bindingResult != null && bindingResult.hasErrors()) { 
 | 
                return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage()); 
 | 
            } 
 | 
            return BaseResponseUtils.buildSuccess(sv.update(param)); 
 | 
        }catch (Exception e){ 
 | 
            log.error("更新产品技术参数异常", e); 
 | 
            return BaseResponseUtils.buildException(e.getMessage()); 
 | 
        } 
 | 
    } 
 | 
  
 | 
    /** 
 | 
     * 删除产品技术参数信息 
 | 
     * @param id 
 | 
     * @return 
 | 
     */ 
 | 
    @GetMapping(path="delete") 
 | 
    @SsoPowerAop(power = "10300001") 
 | 
    @Log("删除产品技术参数信息") 
 | 
    public BaseResponse<PltProductParams> delete(String id){ 
 | 
        try { 
 | 
            return BaseResponseUtils.buildSuccess(sv.delete(Long.parseLong(id))); 
 | 
        }catch (Exception e){ 
 | 
            log.error("删除产品技术参数异常", e); 
 | 
            return BaseResponseUtils.buildException(e.getMessage()); 
 | 
        } 
 | 
    } 
 | 
  
 | 
  
 | 
  
 | 
    /** 
 | 
     * 根据ID查询产品技术参数信息 
 | 
     * @return 
 | 
     */ 
 | 
    @GetMapping(path="one") 
 | 
    @SsoPowerAop(power = "10300000") //登录与权限同时验证 
 | 
    @Log("根据ID查询产品技术参数信息") 
 | 
    public BaseResponse<PltProductParams> one(String id){ 
 | 
        try{ 
 | 
            PltProductParams param=sv.selectById(id); 
 | 
            return BaseResponseUtils.buildSuccess(JSON.toJSON(param)); 
 | 
        }catch (Exception e){ 
 | 
            log.error("查询产品技术参数异常", e); 
 | 
            return BaseResponseUtils.buildException(e.getMessage()); 
 | 
        } 
 | 
    } 
 | 
  
 | 
    /** 
 | 
     * 查询产品技术参数信息 
 | 
     * @param vo 
 | 
     * @return 
 | 
     */ 
 | 
    @PostMapping(path="some") 
 | 
    @SsoPowerAop(power = "10300000") 
 | 
    @Log("查询产品技术参数信息") 
 | 
    public BaseResponse<QueryResultVo<List<PltProductParams>>> some(@RequestBody QueryVo vo){ 
 | 
        try { 
 | 
            QueryResultVo<List<PltProductParams>> list = sv.selectSome(vo) ; 
 | 
            return BaseResponseUtils.buildSuccess(list); 
 | 
        }catch (Exception e){ 
 | 
            log.error("查询产品技术参数异常", e); 
 | 
            return BaseResponseUtils.buildException(e.getMessage()); 
 | 
        } 
 | 
    } 
 | 
  
 | 
} 
 |