| | |
| | | import io.swagger.annotations.ApiOperation; |
| | | import org.springframework.beans.BeanUtils; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.util.StringUtils; |
| | | import org.springframework.validation.annotation.Validated; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | |
| | | import java.util.ArrayList; |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | import java.util.Objects; |
| | | import java.util.stream.Collectors; |
| | | |
| | | /** |
| | |
| | | @PostMapping(value = "/getCurrentByParamFrame") |
| | | public ApiResult<Integer> getCurrentByParamFrame(@RequestBody GetCurrentByParam getCurrentByParam) { |
| | | // 根据型号名称 查询型号列表ids |
| | | List<Integer> collect = modelService.lambdaQuery().eq(TModel::getName, getCurrentByParam.getModel()) |
| | | .eq(TModel::getMaterialId,getCurrentByParam.getMaterialId()) |
| | | .eq(TModel::getColor,getCurrentByParam.getColor()) |
| | | .eq(TModel::getBrandId,getCurrentByParam.getBrandId()) |
| | | List<Integer> collect = modelService.lambdaQuery() |
| | | .eq(StringUtils.hasLength(getCurrentByParam.getModel()),TModel::getName, getCurrentByParam.getModel()) |
| | | .eq(Objects.nonNull(getCurrentByParam.getMaterialId()),TModel::getMaterialId,getCurrentByParam.getMaterialId()) |
| | | .eq(StringUtils.hasLength(getCurrentByParam.getColor()),TModel::getColor,getCurrentByParam.getColor()) |
| | | .eq(Objects.nonNull(getCurrentByParam.getBrandId()),TModel::getBrandId,getCurrentByParam.getBrandId()) |
| | | .list().stream().map(TModel::getId).collect(Collectors.toList()); |
| | | TFrameGoods one = frameGoodsService.lambdaQuery().in(TFrameGoods::getModelId, collect) |
| | | .eq(TFrameGoods::getColor, getCurrentByParam.getColor()).one(); |
| | | if (one!=null){ |
| | | return ApiResult.success(one.getTotal()); |
| | | |
| | | } |
| | | return ApiResult.success(0); |
| | | if (collect.isEmpty())collect.add(-1); |
| | | List<TFrameGoods> one = frameGoodsService.lambdaQuery().in(TFrameGoods::getModelId, collect) |
| | | .eq(TFrameGoods::getColor, getCurrentByParam.getColor()) |
| | | .eq(TFrameGoods::getStoreId, getCurrentByParam.getStoreId()).list(); |
| | | if (one.isEmpty())return ApiResult.success(0); |
| | | Integer temp = one.stream() |
| | | .mapToInt(TFrameGoods::getTotal) |
| | | .sum(); |
| | | return ApiResult.success(temp); |
| | | } |
| | | @ApiOperation(value = "镜片-根据系列id、球/非球、品牌id、折射率、ballMirror、columnMirror查询当前库存") |
| | | @PostMapping(value = "/getCurrentByParamLens") |
| | | public ApiResult<Integer> getCurrentByParamLens(@RequestBody GetCurrentByParamLens dto) { |
| | | TLensGoods one = lensGoodsService.lambdaQuery().in(TLensGoods::getSeriesId, dto.getSeriesId()) |
| | | List<TLensGoods> one = lensGoodsService.lambdaQuery().eq(TLensGoods::getSeriesId, dto.getSeriesId()) |
| | | .eq(dto.getLensType()!=null,TLensGoods::getLensType, dto.getLensType()) |
| | | .eq(dto.getRefractiveIndex()!=null,TLensGoods::getRefractiveIndex, dto.getRefractiveIndex()) |
| | | .eq(dto.getBallMirror()!=null,TLensGoods::getBallMirror, dto.getBallMirror()) |
| | | .eq(dto.getColumnMirror()!=null,TLensGoods::getColumnMirror, dto.getColumnMirror()) |
| | | .one(); |
| | | if (one!=null){ |
| | | return ApiResult.success(one.getTotal()); |
| | | } |
| | | return ApiResult.success(0); |
| | | .eq(StringUtils.hasLength(dto.getRefractiveIndex()),TLensGoods::getRefractiveIndex, dto.getRefractiveIndex()) |
| | | .eq(StringUtils.hasLength(dto.getBallMirror()),TLensGoods::getBallMirror, dto.getBallMirror()) |
| | | .eq(StringUtils.hasLength(dto.getColumnMirror()),TLensGoods::getColumnMirror, dto.getColumnMirror()) |
| | | .eq(dto.getStoreId()!=null,TLensGoods::getStoreId, dto.getStoreId()) |
| | | .list(); |
| | | if (one.isEmpty())return ApiResult.success(0); |
| | | Integer temp = one.stream() |
| | | .mapToInt(TLensGoods::getTotal) |
| | | .sum(); |
| | | return ApiResult.success(temp); |
| | | } |
| | | @ApiOperation(value = "镜架库存分页列表") |
| | | @PostMapping(value = "/frameReceiptList") |
| | |
| | | PageInfo<TFrameWarehousingDetailVO> frameWarehousingDetailVOPageInfo = warehousingService.detailList(query); |
| | | return ApiResult.success(frameWarehousingDetailVOPageInfo); |
| | | } |
| | | @ApiOperation(value = "镜片出入库记录列表") |
| | | @PostMapping(value = "/detailLensList") |
| | | public ApiResult<PageInfo<TLensWarehousingDetailVO>> detailLensList(@RequestBody TWarehousingDetailLensQuery query) { |
| | | return ApiResult.success(warehousingService.detailListLens(query)); |
| | | } |
| | | /** |
| | | * 库存明细记录列表 |
| | | */ |
| | | @ApiOperation(value = "镜片库存明细记录列表--库存详情") |
| | | @PostMapping(value = "/detailLensList") |
| | | public ApiResult<TLensGoodsDetailVO> detailLensList(Integer id) { |
| | | @PostMapping(value = "/detailLensListDetail") |
| | | public ApiResult<TLensGoodsDetailVO> detailLensListDetail(Integer id) { |
| | | TLensGoodsDetailVO tLensGoodsDetailVO = new TLensGoodsDetailVO(); |
| | | TLensGoods byId = lensGoodsService.getById(id); |
| | | TStore byId1 = storeService.getById(byId.getStoreId()); |
| | |
| | | tLensGoodsDetailVO.setTitle(byId3.getName()+byId2.getName()+t1+" "+byId.getRefractiveIndex()); |
| | | } |
| | | // 查询这个商品的库存明细 |
| | | List<TLensWarehousingDetail> list = lensWarehousingDetailService.lambdaQuery().eq(TLensWarehousingDetail::getSeriesId, byId.getSeriesId()) |
| | | .eq(TLensWarehousingDetail::getRefractiveIndex, byId.getRefractiveIndex()).list(); |
| | | List<TLensGoods> list = lensGoodsService.lambdaQuery().eq(TLensGoods::getSeriesId, byId.getSeriesId()) |
| | | .eq(TLensGoods::getRefractiveIndex, byId.getRefractiveIndex()).list(); |
| | | tLensGoodsDetailVO.setList(list); |
| | | return ApiResult.success(tLensGoodsDetailVO); |
| | | } |
| | |
| | | List<TFrameGoods> list1 = new ArrayList<>(); |
| | | for (TFrameWarehousingDetail frameWarehousingDetail : frameWarehousingDetails) { |
| | | TFrameGoods one = frameGoodsService.lambdaQuery().eq(TFrameGoods::getModelId, frameWarehousingDetail.getModelId()) |
| | | .eq(TFrameGoods::getStoreId, dto.getStoreId()) |
| | | .eq(TFrameGoods::getColor, frameWarehousingDetail.getColor()).one(); |
| | | if (one!=null){ |
| | | if (one.getTotal()-frameWarehousingDetail.getTotal()<0){ |
| | |
| | | // 增加对应库存 |
| | | one.setTotal(one.getTotal()-frameWarehousingDetail.getTotal()); |
| | | list1.add(one); |
| | | }else { |
| | | return ApiResult.failed("库存不足"); |
| | | |
| | | } |
| | | } |
| | | if (!list1.isEmpty())frameGoodsService.updateBatchById(list1); |
| | |
| | | List<TFrameGoods> list2 = new ArrayList<>(); |
| | | for (TFrameWarehousingDetail frameWarehousingDetail : frameWarehousingDetails) { |
| | | TFrameGoods one = frameGoodsService.lambdaQuery().eq(TFrameGoods::getModelId, frameWarehousingDetail.getModelId()) |
| | | .eq(TFrameGoods::getStoreId, dto.getStoreId()) |
| | | .eq(TFrameGoods::getColor, frameWarehousingDetail.getColor()).one(); |
| | | if (one!=null){ |
| | | // 增加对应库存 |
| | |
| | | .eq(TLensGoods::getLensType, frameWarehousingDetail.getType()) |
| | | .eq(TLensGoods::getBallMirror, frameWarehousingDetail.getBallMirror()) |
| | | .eq(TLensGoods::getColumnMirror, frameWarehousingDetail.getColumnMirror()) |
| | | .eq(TLensGoods::getStoreId, dto.getStoreId()) |
| | | .one(); |
| | | if (one!=null){ |
| | | if (one.getTotal()-frameWarehousingDetail.getTotal()<0){ |
| | |
| | | // 减少对应库存 |
| | | one.setTotal(one.getTotal()-frameWarehousingDetail.getTotal()); |
| | | list1.add(one); |
| | | }else { |
| | | return ApiResult.failed("库存不足"); |
| | | |
| | | } |
| | | } |
| | | if (!list1.isEmpty())lensGoodsService.updateBatchById(list1); |
| | |
| | | .eq(TLensGoods::getRefractiveIndex, frameWarehousingDetail.getRefractiveIndex()) |
| | | .eq(TLensGoods::getBallMirror, frameWarehousingDetail.getBallMirror()) |
| | | .eq(TLensGoods::getLensType, frameWarehousingDetail.getType()) |
| | | |
| | | .eq(TLensGoods::getStoreId, dto.getStoreId()) |
| | | .eq(TLensGoods::getColumnMirror, frameWarehousingDetail.getColumnMirror()) |
| | | .one(); |
| | | if (one!=null){ |