From 2f8e70ad2884d2b6b7443dfae0af11ae9cfc8b99 Mon Sep 17 00:00:00 2001 From: 无关风月 <443237572@qq.com> Date: 星期五, 28 二月 2025 17:44:10 +0800 Subject: [PATCH] bug修改 --- manage/src/main/java/com/jilongda/manage/controller/TWarehousingController.java | 122 +++++++++++++++++++++++++++++++--------- 1 files changed, 95 insertions(+), 27 deletions(-) diff --git a/manage/src/main/java/com/jilongda/manage/controller/TWarehousingController.java b/manage/src/main/java/com/jilongda/manage/controller/TWarehousingController.java index 0945238..40be5e6 100644 --- a/manage/src/main/java/com/jilongda/manage/controller/TWarehousingController.java +++ b/manage/src/main/java/com/jilongda/manage/controller/TWarehousingController.java @@ -8,6 +8,7 @@ import com.jilongda.common.enums.WarehousingTypeEnum; import com.jilongda.common.security.JwtTokenUtils; import com.jilongda.common.utils.CodeGenerateUtils; +import com.jilongda.common.utils.UUIDUtil; import com.jilongda.manage.dto.GetCurrentByParam; import com.jilongda.manage.dto.GetCurrentByParamLens; import com.jilongda.manage.dto.TWarehousingDTO; @@ -23,12 +24,16 @@ 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.text.SimpleDateFormat; import java.time.LocalDateTime; import java.util.ArrayList; +import java.util.Date; import java.util.List; +import java.util.Objects; import java.util.stream.Collectors; /** @@ -65,36 +70,41 @@ /** * 通过型号查询色号列表 */ - @ApiOperation(value = "镜架-根据品牌id、型号名称、色号名称查询当前库存") + @ApiOperation(value = "镜架-根据品牌id、型号名称、色号名称、材质id查询当前库存") @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查询当前库存") + @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") @@ -105,6 +115,30 @@ @PostMapping(value = "/lensReceiptList") public ApiResult<PageInfo<TLensGoodsVO>> lensReceiptList(@RequestBody TLensGoodsQuery query) { return ApiResult.success(lensGoodsService.lensReceiptList(query)); + } + @ApiOperation(value = "镜片库存分页列表-启用禁用") + @PostMapping(value = "/updateStateLens") + public ApiResult updateStateLens(Integer id) { + TLensGoods byId = lensGoodsService.getById(id); + if (byId.getStatus()==1){ + byId.setStatus(2); + }else { + byId.setStatus(1); + } + lensGoodsService.updateById(byId); + return ApiResult.success(); + } + @ApiOperation(value = "镜架库存分页列表-启用禁用") + @PostMapping(value = "/updateStateFrame") + public ApiResult updateStateFrame(Integer id) { + TFrameGoods byId = frameGoodsService.getById(id); + if (byId.getStatus()==1){ + byId.setStatus(2); + }else { + byId.setStatus(1); + } + frameGoodsService.updateById(byId); + return ApiResult.success(); } /** * 出入库单列表 @@ -129,12 +163,29 @@ PageInfo<TFrameWarehousingDetailVO> frameWarehousingDetailVOPageInfo = warehousingService.detailList(query); return ApiResult.success(frameWarehousingDetailVOPageInfo); } + @ApiOperation(value = "镜片出入库记录列表") + @PostMapping(value = "/detailLensList") + public ApiResult<PageInfo<TLensWarehousingDetailVO>> detailLensList(@RequestBody TWarehousingDetailLensQuery query) { + if (query.getSeriesId()!=null){ + TLensSeries series = lensSeriesService.getById(query.getSeriesId()); + if (series!=null){ + query.setSeries(series.getName()); + } + } + if (query.getBrandId()!=null){ + TBrand brand = brandService.getById(query.getBrandId()); + if (brand!=null){ + query.setBrand(brand.getName()); + } + } + 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()); @@ -160,8 +211,8 @@ 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); } @@ -189,6 +240,7 @@ 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){ @@ -197,6 +249,9 @@ // 增加对应库存 one.setTotal(one.getTotal()-frameWarehousingDetail.getTotal()); list1.add(one); + }else { + return ApiResult.failed("库存不足"); + } } if (!list1.isEmpty())frameGoodsService.updateBatchById(list1); @@ -208,6 +263,7 @@ 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){ // 增加对应库存 @@ -255,6 +311,7 @@ .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){ @@ -263,6 +320,9 @@ // 减少对应库存 one.setTotal(one.getTotal()-frameWarehousingDetail.getTotal()); list1.add(one); + }else { + return ApiResult.failed("库存不足"); + } } if (!list1.isEmpty())lensGoodsService.updateBatchById(list1); @@ -277,7 +337,7 @@ .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){ @@ -315,6 +375,10 @@ List<TFrameWarehousingDetail> list = frameWarehousingDetailService.list(Wrappers.lambdaQuery(TFrameWarehousingDetail.class) .eq(TFrameWarehousingDetail::getWarehousingId, id)); vo.setFrameWarehousingDetails(list); + TStore store = storeService.getById(warehousing.getStoreId()); + if (store!=null){ + vo.setStoreName(store.getName()); + } // 统计数量 vo.setTotalNum(list.stream().mapToInt(TFrameWarehousingDetail::getTotal).sum()); return ApiResult.success(vo); @@ -327,6 +391,10 @@ BeanUtils.copyProperties(warehousing, vo); List<TLensWarehousingDetail> list = lensWarehousingDetailService.list(Wrappers.lambdaQuery(TLensWarehousingDetail.class) .eq(TLensWarehousingDetail::getWarehousingId, id)); + TStore store = storeService.getById(warehousing.getStoreId()); + if (store!=null){ + vo.setStoreName(store.getName()); + } vo.setLensWarehousingDetails(list); // 统计数量 vo.setTotalNum(list.stream().mapToInt(TLensWarehousingDetail::getTotal).sum()); -- Gitblit v1.7.1