package com.glxp.api.controller.inout; 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.basic.UdiEntity; import com.glxp.api.entity.basic.UdiProductEntity; import com.glxp.api.entity.inout.IoCodeRelEntity; import com.glxp.api.req.inout.IoOrderRelRequest; import com.glxp.api.req.purchase.PurApplyRequest; import com.glxp.api.res.PageSimpleResponse; import com.glxp.api.res.inout.IoCodeLostResponse; import com.glxp.api.res.inout.IoCodeRelResponse; import com.glxp.api.res.purchase.PurApplyResponse; import com.glxp.api.service.basic.UdiProductService; import com.glxp.api.service.inout.IoCodeRelService; import com.glxp.api.util.udi.FilterUdiUtils; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource; import java.util.Date; import java.util.List; @RestController public class ioCodeRelController { @Resource IoCodeRelService ioCodeRelServicec; @Resource UdiProductService udiProductService; @GetMapping("/udi/ioCode/Rel/list") public BaseResponse list(IoOrderRelRequest ioOrderRelRequest) { List list = ioCodeRelServicec.selectIoCodeRelList(ioOrderRelRequest); PageInfo pageInfo; pageInfo = new PageInfo<>(list); PageSimpleResponse pageSimpleResponse = new PageSimpleResponse<>(); pageSimpleResponse.setTotal(pageInfo.getTotal()); pageSimpleResponse.setList(list); return ResultVOUtils.success(pageSimpleResponse); } @GetMapping("/udi/ioCode/Rel/checkUpProduct") public BaseResponse checkUpProduct(String code) { //判断码有没有重复 List list=ioCodeRelServicec.selectIoCodeRelByCode("",code); if(list.size()>0){ return ResultVOUtils.error(999,"此码已做关联!"); } if(StrUtil.isNotEmpty(code)){ UdiEntity udiEntity=FilterUdiUtils.getGS1Udi(code); UdiProductEntity udiProductEntity=udiProductService.findByNameCode(udiEntity.getUdi()); if(udiProductEntity.getPackLevel()!=null){ if(Integer.valueOf(udiProductEntity.getPackLevel())>1){ return ResultVOUtils.success(udiProductEntity.getBhxjcpbm()); } } } return ResultVOUtils.error(999,"扫码错误!"); } @GetMapping("/udi/ioCode/Rel/checkLowProduct") public BaseResponse checkLowProduct(String upCode,String lowCode) { UdiProductEntity udiProductEntity=new UdiProductEntity(); //查询上级产品信息 if(StrUtil.isNotEmpty(upCode)){ UdiEntity udiEntity=FilterUdiUtils.getGS1Udi(upCode); udiProductEntity=udiProductService.findByNameCode(udiEntity.getUdi()); } //判断码有没有重复 List list=ioCodeRelServicec.selectIoCodeRelByCode(lowCode,upCode); if(list.size()>0){ return ResultVOUtils.error(999,"此码已做关联!"); } //判断条数是否超出 Long count=ioCodeRelServicec.selectIoCodeRelCount(upCode); if(count>=udiProductEntity.getBhxjsl()){ return ResultVOUtils.error(999,"数量超出!"); } //查询下级产品信息 if(StrUtil.isNotEmpty(lowCode)){ UdiEntity udiEntity=FilterUdiUtils.getGS1Udi(lowCode); UdiProductEntity udiProductEntity1=udiProductService.findByNameCode(udiEntity.getUdi()); if(udiProductEntity!=null){ if(udiProductEntity1.getNameCode().equals(udiProductEntity.getBhxjcpbm())){ IoCodeRelEntity ioCodeRelEntity=new IoCodeRelEntity(); ioCodeRelEntity.setCode(lowCode); ioCodeRelEntity.setParentCode(upCode); ioCodeRelEntity.setNameCode(udiProductEntity1.getNameCode()); ioCodeRelEntity.setDiType(udiProductEntity1.getDiType()); ioCodeRelEntity.setLevel(udiProductEntity1.getPackLevel()); ioCodeRelEntity.setProduceDate(udiProductEntity1.getProduceDate()); ioCodeRelEntity.setExpireDate(udiProductEntity1.getExpireDate()); ioCodeRelEntity.setSerialNo(udiProductEntity1.getSerialNo()); ioCodeRelEntity.setCreateTime(new Date()); ioCodeRelEntity.setUpdateTime(new Date()); ioCodeRelServicec.insert(ioCodeRelEntity); return ResultVOUtils.success(); }else{ return ResultVOUtils.error(999,"该条码不属于下级产品!"); } } } return ResultVOUtils.error(999,""); } @GetMapping("/udi/ioCode/Rel/delectList") public BaseResponse delectList(IoOrderRelRequest ioOrderRelRequest) { List list = ioCodeRelServicec.selectIoCodeRelDetailList(ioOrderRelRequest); PageInfo pageInfo; pageInfo = new PageInfo<>(list); PageSimpleResponse pageSimpleResponse = new PageSimpleResponse<>(); pageSimpleResponse.setTotal(pageInfo.getTotal()); pageSimpleResponse.setList(list); return ResultVOUtils.success(pageSimpleResponse); } @GetMapping("/udi/ioCode/Rel/del") public BaseResponse del(String code,String parentCode) { int count=ioCodeRelServicec.delIoCodeRel(code,parentCode); if(count>0){ return ResultVOUtils.success("删除成功"); }else{ return ResultVOUtils.error(999,"删除失败"); } } }