You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
147 lines
5.9 KiB
Java
147 lines
5.9 KiB
Java
package com.glxp.api.controller.inout;
|
|
|
|
|
|
import cn.hutool.core.util.StrUtil;
|
|
import com.github.pagehelper.PageInfo;
|
|
import com.glxp.api.annotation.Log;
|
|
import com.glxp.api.common.res.BaseResponse;
|
|
import com.glxp.api.common.util.ResultVOUtils;
|
|
import com.glxp.api.constant.BusinessType;
|
|
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.res.PageSimpleResponse;
|
|
import com.glxp.api.res.inout.IoCodeRelResponse;
|
|
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<IoCodeRelResponse> list = ioCodeRelServicec.selectIoCodeRelList(ioOrderRelRequest);
|
|
PageInfo<IoCodeRelResponse> pageInfo;
|
|
pageInfo = new PageInfo<>(list);
|
|
PageSimpleResponse<IoCodeRelResponse> 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<IoCodeRelEntity> list = ioCodeRelServicec.selectIoCodeRelByCode("", code);
|
|
if (list.size() > 0) {
|
|
return ResultVOUtils.error(999, "此码已做关联!");
|
|
}
|
|
|
|
if (StrUtil.isNotEmpty(code)) {
|
|
UdiEntity udiEntity = FilterUdiUtils.getUdi(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")
|
|
@Log(title = "单据管理", businessType = BusinessType.INSERT)
|
|
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<IoCodeRelEntity> 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<IoCodeRelResponse> list = ioCodeRelServicec.selectIoCodeRelDetailList(ioOrderRelRequest);
|
|
PageInfo<IoCodeRelResponse> pageInfo;
|
|
pageInfo = new PageInfo<>(list);
|
|
PageSimpleResponse<IoCodeRelResponse> pageSimpleResponse = new PageSimpleResponse<>();
|
|
pageSimpleResponse.setTotal(pageInfo.getTotal());
|
|
pageSimpleResponse.setList(list);
|
|
return ResultVOUtils.success(pageSimpleResponse);
|
|
}
|
|
|
|
|
|
@GetMapping("/udi/ioCode/Rel/del")
|
|
@Log(title = "单据管理", businessType = BusinessType.DELETE)
|
|
public BaseResponse del(String code, String parentCode) {
|
|
|
|
int count = ioCodeRelServicec.delIoCodeRel(code, parentCode);
|
|
if (count > 0) {
|
|
return ResultVOUtils.success("删除成功");
|
|
} else {
|
|
return ResultVOUtils.error(999, "删除失败");
|
|
}
|
|
|
|
}
|
|
|
|
|
|
}
|