package com.glxp.api.controller.dev; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.StrUtil; import com.github.pagehelper.PageInfo; import com.glxp.api.common.enums.ResultEnum; import com.glxp.api.common.res.BaseResponse; import com.glxp.api.common.util.ResultVOUtils; import com.glxp.api.entity.dev.InvMAOrderDetailEntity; import com.glxp.api.req.dev.AddInvMAOrderDetailRequest; import com.glxp.api.req.dev.FilterInvMAOrderDetailRequest; import com.glxp.api.res.dev.InvMAOrderDetailResponse; import com.glxp.api.service.dev.InvMAOrderDetailService; import lombok.extern.slf4j.Slf4j; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource; import java.util.List; /** * 库存养护记录详情接口 */ @Slf4j @RestController public class InvMAOrderDetailController { @Resource private InvMAOrderDetailService invMAOrderDetailService; /** * 查询养护记录详情 * * @param filterInvMAOrderDetailRequest * @return */ @GetMapping("/inv/MA/order/detail/filterList") public BaseResponse filterList(FilterInvMAOrderDetailRequest filterInvMAOrderDetailRequest) { List list = invMAOrderDetailService.filterList(filterInvMAOrderDetailRequest); PageInfo pageInfo = new PageInfo<>(list); return ResultVOUtils.page(pageInfo); } /** * 扫码添加养护记录详情 * * @param invMAOrderDetailEntity * @param bindingResult * @return */ @PostMapping("/inv/MA/order/detail/addOrderDetail") public BaseResponse addOrderDetail(@RequestBody InvMAOrderDetailEntity invMAOrderDetailEntity, BindingResult bindingResult) { if (bindingResult.hasErrors()) { return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); } if (null == invMAOrderDetailEntity || StrUtil.isBlank(invMAOrderDetailEntity.getCode()) || StrUtil.isBlank(invMAOrderDetailEntity.getOrderIdFk())) { return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, "参数不能为空"); } return invMAOrderDetailService.addOrderDetail(invMAOrderDetailEntity); } /** * 选中库存详情批量添加养护记录详情 * * @param addMAOrderDetailRequest * @return */ @PostMapping("/inv/MA/order/detail/batchAddDetail") public BaseResponse batchAddDetail(@RequestBody AddInvMAOrderDetailRequest addMAOrderDetailRequest, BindingResult bindingResult) { if (bindingResult.hasErrors()) { return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); } if (null == addMAOrderDetailRequest || CollUtil.isEmpty(addMAOrderDetailRequest.getInvProductIds()) || StrUtil.isBlank(addMAOrderDetailRequest.getOrderIdFk())) { return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, "参数不能为空!"); } return invMAOrderDetailService.batchAddDetail(addMAOrderDetailRequest); } /** * 减一 * * @param filterInvMAOrderDetailRequest * @return */ @PostMapping("/inv/MA/order/detail/delete") public BaseResponse delete(@RequestBody FilterInvMAOrderDetailRequest filterInvMAOrderDetailRequest, BindingResult bindingResult) { if (bindingResult.hasErrors()) { return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); } if (null == filterInvMAOrderDetailRequest || null == filterInvMAOrderDetailRequest.getId()) { return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, "参数不能为空"); } return invMAOrderDetailService.delete(filterInvMAOrderDetailRequest.getId()); } /** * 更新库存养护记录详情 * * @param invMAOrderDetailEntity * @return */ @PostMapping("/inv/MA/order/detail/update") public BaseResponse update(@RequestBody InvMAOrderDetailEntity invMAOrderDetailEntity, BindingResult bindingResult) { if (bindingResult.hasErrors()) { return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); } if (null == invMAOrderDetailEntity || null == invMAOrderDetailEntity.getId()) { return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, "参数不能为空!"); } return invMAOrderDetailService.update(invMAOrderDetailEntity); } }