无关风月
2024-12-19 3d7c57bfc9f91f829509d4cc833bef6ef6313c7f
manage/src/main/java/com/jilongda/manage/controller/TWarehousingController.java
@@ -10,14 +10,10 @@
import com.jilongda.common.utils.CodeGenerateUtils;
import com.jilongda.manage.dto.TWarehousingDTO;
import com.jilongda.manage.dto.TWarehousingLensDTO;
import com.jilongda.manage.model.TFrameWarehousingDetail;
import com.jilongda.manage.model.TLensWarehousingDetail;
import com.jilongda.manage.model.TWarehousing;
import com.jilongda.manage.model.*;
import com.jilongda.manage.query.TWarehousingDetailLensQuery;
import com.jilongda.manage.query.TWarehousingDetailQuery;
import com.jilongda.manage.service.TFrameWarehousingDetailService;
import com.jilongda.manage.service.TLensWarehousingDetailService;
import com.jilongda.manage.service.TWarehousingService;
import com.jilongda.manage.service.*;
import com.jilongda.manage.vo.TFrameWarehousingDetailVO;
import com.jilongda.manage.vo.TLensWarehousingDetailVO;
import com.jilongda.manage.vo.TWarehousingLensVO;
@@ -30,6 +26,7 @@
import org.springframework.web.bind.annotation.*;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.List;
/**
@@ -51,6 +48,10 @@
    private TFrameWarehousingDetailService frameWarehousingDetailService;
    @Autowired
    private TLensWarehousingDetailService lensWarehousingDetailService;
    @Autowired
    private TFrameGoodsService frameGoodsService;
    @Autowired
    private TLensGoodsService lensGoodsService;
    /**
     * 出入库单列表
@@ -90,7 +91,7 @@
     */
    @ApiOperation(value = "添加镜架出库,入库,作废,退货")
    @PostMapping(value = "/outBound")
    public ApiResult<String> outBound(@Validated @RequestBody TWarehousingDTO dto) {
    public ApiResult<Integer> outBound(@Validated @RequestBody TWarehousingDTO dto) {
        // 获取当前用户
        String username = JwtTokenUtils.getUsername();
        dto.setCreateBy(username);
@@ -105,7 +106,44 @@
            detail.setCode(WarehousingConstant.OUT_BOUND+CodeGenerateUtils.generateVolumeSn());
        });
        frameWarehousingDetailService.saveBatch(frameWarehousingDetails);
        return ApiResult.success();
        if (dto.getStatus()==1||dto.getStatus()==3){
            List<TFrameGoods> list1 = new ArrayList<>();
            for (TFrameWarehousingDetail frameWarehousingDetail : frameWarehousingDetails) {
                TFrameGoods one = frameGoodsService.lambdaQuery().eq(TFrameGoods::getModelId, frameWarehousingDetail.getModelId())
                        .eq(TFrameGoods::getColor, frameWarehousingDetail.getColor()).one();
                if (one!=null){
                    // 增加对应库存
                    one.setTotal(one.getTotal()-frameWarehousingDetail.getTotal());
                    list1.add(one);
                }
            }
            if (!list1.isEmpty())frameGoodsService.updateBatchById(list1);
        }
        if (dto.getStatus()==2 || dto.getStatus()==4){
            List<TFrameGoods> list1 = new ArrayList<>();
            List<TFrameGoods> list2 = new ArrayList<>();
            for (TFrameWarehousingDetail frameWarehousingDetail : frameWarehousingDetails) {
                TFrameGoods one = frameGoodsService.lambdaQuery().eq(TFrameGoods::getModelId, frameWarehousingDetail.getModelId())
                        .eq(TFrameGoods::getColor, frameWarehousingDetail.getColor()).one();
                if (one!=null){
                    // 增加对应库存
                    one.setTotal(one.getTotal()+frameWarehousingDetail.getTotal());
                    list1.add(one);
                }else {
                    // 新增
                    TFrameGoods tFrameGoods = new TFrameGoods();
                    tFrameGoods.setColor(frameWarehousingDetail.getColor());
                    tFrameGoods.setTotal(frameWarehousingDetail.getTotal());
                    tFrameGoods.setModelId(frameWarehousingDetail.getModelId());
                    tFrameGoods.setStoreId(dto.getStoreId());
                    list2.add(tFrameGoods);
                }
            }
            if (!list1.isEmpty())frameGoodsService.updateBatchById(list1);
            if (!list2.isEmpty())frameGoodsService.saveBatch(list2);
        }
        return ApiResult.success(dto.getId());
    }
    /**
     * 添加镜片出库,入库,作废,退货
@@ -126,6 +164,50 @@
            detail.setCode(WarehousingConstant.OUT_BOUND+CodeGenerateUtils.generateVolumeSn());
        });
        lensWarehousingDetailService.saveBatch(frameWarehousingDetails);
        if (dto.getStatus()==1||dto.getStatus()==3){
            List<TLensGoods> list1 = new ArrayList<>();
            for (TLensWarehousingDetail frameWarehousingDetail : frameWarehousingDetails) {
                TLensGoods one = lensGoodsService.lambdaQuery().eq(TLensGoods::getSeriesId, frameWarehousingDetail.getSeriesId())
                        .eq(TLensGoods::getRefractiveIndex, frameWarehousingDetail.getRefractiveIndex())
                        .eq(TLensGoods::getBallMirror, frameWarehousingDetail.getBallMirror())
                        .eq(TLensGoods::getColumnMirror, frameWarehousingDetail.getColumnMirror())
                        .one();
                if (one!=null){
                    // 减少对应库存
                    one.setTotal(one.getTotal()-frameWarehousingDetail.getTotal());
                    list1.add(one);
                }
            }
            if (!list1.isEmpty())lensGoodsService.updateBatchById(list1);
        }
        if (dto.getStatus()==2 || dto.getStatus()==4){
            List<TLensGoods> list1 = new ArrayList<>();
            List<TLensGoods> list2 = new ArrayList<>();
            for (TLensWarehousingDetail frameWarehousingDetail : frameWarehousingDetails) {
                TLensGoods one = lensGoodsService.lambdaQuery().eq(TLensGoods::getSeriesId, frameWarehousingDetail.getSeriesId())
                        .eq(TLensGoods::getRefractiveIndex, frameWarehousingDetail.getRefractiveIndex())
                        .eq(TLensGoods::getBallMirror, frameWarehousingDetail.getBallMirror())
                        .eq(TLensGoods::getColumnMirror, frameWarehousingDetail.getColumnMirror())
                        .one();
                if (one!=null){
                    // 增加对应库存
                    one.setTotal(one.getTotal()+frameWarehousingDetail.getTotal());
                    list1.add(one);
                }else {
                    // 新增
                    TLensGoods tFrameGoods = new TLensGoods();
                    tFrameGoods.setSeriesId(frameWarehousingDetail.getSeriesId());
                    tFrameGoods.setBallMirror(frameWarehousingDetail.getBallMirror());
                    tFrameGoods.setColumnMirror(frameWarehousingDetail.getColumnMirror());
                    tFrameGoods.setRefractiveIndex(frameWarehousingDetail.getRefractiveIndex());
                    tFrameGoods.setTotal(frameWarehousingDetail.getTotal());
                    tFrameGoods.setStoreId(dto.getStoreId());
                    list2.add(tFrameGoods);
                }
            }
            if (!list1.isEmpty())lensGoodsService.updateBatchById(list1);
            if (!list2.isEmpty())lensGoodsService.saveBatch(list2);
        }
        return ApiResult.success();
    }