package com.dy.pmsPlatform.material; 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.PltMaterial; 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="material") @SuppressWarnings("unchecked") public class MaterialCtrl { private MaterialSv sv; @Autowired public MaterialCtrl(MaterialSv sv){ this.sv = sv; } /** * 保存物料信息 * @param material * @param bindingResult * @return */ @PostMapping(path="save") @SsoPowerAop(power = "10300001") @Log("保存物料信息") public BaseResponse save(@RequestBody @Valid PltMaterial material,BindingResult bindingResult){ try { if (bindingResult != null && bindingResult.hasErrors()) { return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage()); } material.deleted = false; return BaseResponseUtils.buildSuccess(sv.save(material)); }catch (Exception e){ log.error("保存物料异常", e); return BaseResponseUtils.buildException(e.getMessage()); } } /** * 更新物料信息 * @param material * @param bindingResult * @return */ @PostMapping(path="update") @SsoPowerAop(power = "10300001") @Log("更新物料信息") public BaseResponse update(@RequestBody @Valid PltMaterial material,BindingResult bindingResult){ try { if (bindingResult != null && bindingResult.hasErrors()) { return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage()); } return BaseResponseUtils.buildSuccess(sv.update(material)); }catch (Exception e){ log.error("更新物料异常", e); return BaseResponseUtils.buildException(e.getMessage()); } } /** * 删除物料信息 * @param id * @return */ @GetMapping(path="delete") @SsoPowerAop(power = "10300001") @Log("删除物料信息") public BaseResponse 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 one(String id){ try{ PltMaterial material=sv.selectById(id); return BaseResponseUtils.buildSuccess(JSON.toJSON(material)); }catch (Exception e){ log.error("查询物料异常", e); return BaseResponseUtils.buildException(e.getMessage()); } } /** * 查询物料信息 * @param vo * @return */ @PostMapping(path="some") @SsoPowerAop(power = "10300000") @Log("查询物料信息") public BaseResponse>> some(@RequestBody QueryVo vo){ try { QueryResultVo> list = sv.selectSome(vo) ; return BaseResponseUtils.buildSuccess(list); }catch (Exception e){ log.error("查询物料异常", e); return BaseResponseUtils.buildException(e.getMessage()); } } }